import os
import sys
from openai import OpenAI

# 添加项目根目录到Python路径，以便导入config_reader模块
current_dir = os.path.dirname(os.path.abspath(__file__))
project_root = os.path.dirname(os.path.dirname(current_dir))
sys.path.append(project_root)

from config_reader import get_deepseek_api_key

# 1. 设置 DeepSeek API Key
api_key = get_deepseek_api_key()
client = OpenAI(api_key=api_key, base_url="https://api.deepseek.com")

# 2. 存储对话历史
chat_history = []

def chat(query):
    """发送问题到 DeepSeek，并维护对话历史"""
    # 将用户输入加入历史
    chat_history.append({"role": "user", "content": query})

    try:
        # 调用 DeepSeek Chat API
        response = client.chat.completions.create(
            model="deepseek-chat",  # 使用 DeepSeek V3 模型
            messages=chat_history[-8:],  # 保留最近 4 轮对话（每轮包含 user 和 assistant）
            temperature=0.7
        )

        # 提取模型回复
        assistant_reply = response.choices[0].message
        chat_history.append(assistant_reply)

        return assistant_reply.content

    except Exception as e:
        print(f"DeepSeek API 调用出错: {e}")
        return None

# 3. 测试对话
print(chat("推荐北京适合家庭聚餐的餐厅"))
print(chat("人均预算200元左右"))